Signal processing in barcode reading with a wavelet transformation

ABSTRACT

A method for processing a digital signal obtained in a barcode reading operation comprises a step of applying a wavelet transformation to the digital signal. The noise threshold at each level of the wavelet transformation is determined from a total transfer function in the analogue processing stage, and the coefficients are set to be zero if less than the noise threshold.

BACKGROUND OF THE INVENTION

The present invention relates to signal processing methods in barcodereading techniques, and more particularly, to a method for processing adigital signal obtained in a barcode reading operation in which awavelet transformation is applied to the digital signal and a noisethreshold is determined for each level of the wavelet transformation soas to filter wide band noise.

In a barcode reading operation, a laser light beam is projected from abarcode reader to a barcode, and light reflected from the barcode isreceived by a detector. An analogue signal is generated from thereceived reflected light which represents the information encoded in thebarcode. After being processed in an analogue processing stage, theanalogue signal is converted to a digital signal by ananalogue-to-digital (A/D) converter for further processing and decoding.In the digital processing stage, usually one or more band-passingdigital filters are used to reject noise in the signal. The similar istrue for image based barcode reading such as CCD or CMOS barcodereaders.

However, if there is wide band noise such as white noise, the noise inthe signal band cannot be rejected by band-passing filters. The whitenoise may degrade the reading performance when the signal gain is small,e.g., if the barcode is located in a distance, or if the resolving poweris low.

Therefore, there exists a need for a better method for processingbarcode signals so as to eliminate or reduce wide band noise such aswhite noise.

SUMMARY OF THE INVENTION

To realize the above object, the present invention provides a method forprocessing a digital signal obtained in a barcode reading operation, inwhich a wavelet transformation is applied to the digital signal.Preferably, a threshold is determined for each level of the waveletcoefficients, and the coefficients are set to be zero if lower than thethreshold.

Preferably, the digital signal is converted from an analogue signalobtained in the barcode reading operation, and the threshold is a noisethreshold determined from information obtained in an analogue processingstage in which the analogue signal is processed before theanalogue-to-digital conversion. Preferably, the noise threshold iscalculated from a total transfer function H(ω) in the analogueprocessing stage: $\begin{matrix}{{{Noise}\quad{Threshold}} = {n_{0}\sqrt{2\quad{\ln(N)}} \times \sqrt{\frac{1}{2\pi}{\int_{- \infty}^{\infty}{{{H(\omega)}}^{2}{\mathbb{d}\omega}}}}}} & (1)\end{matrix}$

wherein n₀ is resistance thermal noise generated in a preamplifier inthe analogue signal processing stage, and N is number of data.

Preferably, the total transfer function H(ω) is a product of at leastone of a transfer function of a differential processing stage H_(diff),a transfer function of an AGC amplification stage H_(vagc), and atransfer function of a frequency filtering stage H_(f):H(ω)=H _(diff) ×H _(vagc) ×H _(f)  (2)

Preferably, the wavelet transformation is a Haar Wavelet transformation.Preferably, the wavelet transformation is a discrete wavelettransformation.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other features and advantages will be clearer afterreading the detailed description of the preferred embodiments of thepresent invention with reference to the accompanying drawings, in which:

FIG. 1 is a block diagram schematically illustrating signal processingstages implementing signal processing method in a barcode readingoperation according to the present invention; and

FIG. 2 is a block diagram schematically illustrating wavelet noisefilter applied to the digital signal in the signal processing methodaccording to the present invention.

DETAILED DESCRIPTION OF THE INVENTION

As schematically illustrated in FIG. 1, signal processing in a barcodereading operation usually comprises an analogue processing stage 10 anda digital processing stage 20. The analogue processing stage 10 usuallycomprises a preamplification stage 11, differential processing stage 12,gain control amplification (GCA) 13, frequency filtering 14, etc. Afterbeing processed in the analogue processing stage 10, the analogue signalis converted to a digital signal by an analogue-to-digital (AID)converter 21, and the converted digital signal is processed with properalgorithms so as to digitally filter noise, to decode the signal, etc.

According to the teachings of the present invention, a wavelettransformation 22 is applied to the digital signal so as to reducenoise, especially wide band noise such as white noise, as explained inmore detail below.

A discrete wavelet transformation can be expressed as $\begin{matrix}{{\psi_{j,k}(x)} = {{\frac{1}{\sqrt{2^{- j}}}{\psi( \frac{x - {k\quad 2^{- j}}}{2^{- j}} )}} = {\sqrt{2^{j}}{\psi( 2^{{j\quad x} - k} )}}}} & (3)\end{matrix}$

The discrete wavelet coefficient is: $\begin{matrix}{{W\lbrack {j,k} \rbrack} = {\sum\limits_{n = 0}^{N - 1}{{f\lbrack n\rbrack}{\psi_{j,k}\lbrack n\rbrack}}}} & (4)\end{matrix}$

wherein j is called a “level”.

As schematically illustrated in FIG. 2, a signal is decomposed using thewavelet coefficients at every level.

The approximate function f_(j)(t) at level j is: $\begin{matrix}{{f_{j}(t)} = {\sum\limits_{k}{s_{k}^{(j)}{\varphi_{j,k}(t)}}}} & (5)\end{matrix}$

wherein s is called a “scale function”.

A signal f₀(t) can be expanded as:f ₀(t)=f ₁(t)+g ₁(t)  (6)

wherein g₁(t) is called “wavelet component” of level 1.

g₁(t) can be expressed as: $\begin{matrix}{{g_{1}(t)} = {\sum\limits_{k}{w_{k}^{1}{\varphi_{1,k}(t)}}}} & (7)\end{matrix}$

Thus, the signal f₀(t) can be expanded to level j as follows:$\begin{matrix}{{f_{0}(t)} = {{{g_{1}(t)} + {g_{2}(t)} + \ldots + {g_{1}(t)}} = {{\sum\limits_{j = 1}^{J}{g_{j}(t)}} + {f_{J}(t)}}}} & (8)\end{matrix}$

White noise does not have coherency with the signal. To reduce noise, anoise threshold for each level of the wavelet transformation is properlydetermined, and the coefficients less than the noise threshold are setto be zero. This can reduce wide band noises including white nose. Aslong as the noise threshold is larger than zero, it is effectual fornoise reduction. However, if the noise threshold is too large, it willmake a distortion in the signal.

The noise threshold can be expressed by the following equation:Noise Threshold=σ√{square root over (2ln(N))}  (9)

wherein a is standard deviation of noise, and N is number of data.

According to the teaching of the present invention, the standarddeviation of noise σ is preferably set to be equal to the noise inputn_(in) to wavelet transformation, which is calculated as follows:$\begin{matrix}{n_{i\quad n} = {n_{0}\sqrt{\frac{1}{2\pi}{\int_{- \infty}^{\infty}{{{H(\omega)}}^{2}{\mathbb{d}\omega}}}}}} & (10)\end{matrix}$wherein n₀ is resistance thermal noise in the preamplifier 1 which isusually the origin of major noises, and H(ω) is a total transferfunction between the preamplifier 11 to wavelet transformation 22 in theanalogue processing stage.

The resistance thermal noise can be calculated from:n₀ =√{square root over (4kTR₀)}  (11)

wherein k is Boltzmann constant, T is absolute temperature, and R₀ is aresistance in the preamplifier 11.

Preferably, the total transfer function H(ω) is a product of at leastone of a transfer function of a differential processing stage H_(diff),a transfer function of an AGC amplification stage H_(vagc), and atransfer function of a frequency filtering stage H_(f):H(ω)=H _(diff) ×H _(vagc) ×H _(f)  (2)

In the barcode reader system illustrated in FIG. 1, only the transferfunction H_(vagc) of the GCA amplification 13 is a variable function,and the transfer functions H_(diff) and H_(f) are fixed or knownfunctions for calculation by the CPU 23.

Therefore, concluded from the above, the optimum noise threshold isexpressed as follows: $\begin{matrix}{{{Noise}\quad{Threshold}} = {n_{0}\sqrt{2\quad{\ln(N)}} \times \sqrt{\frac{1}{2\pi}{\int_{- \infty}^{\infty}{{{H(\omega)}}^{2}{\mathbb{d}\omega}}}}}} & (1) \\{{{Wherein}\text{:}\quad{H(\omega)}} = {H_{diff} \times H_{vagc} \times H_{f}}} & (2)\end{matrix}$

Though the above has described the preferred embodiments of the presentinvention, it shall be understood that numerous adaptations,modifications and variations are possible to those skilled in the artwithout departing the gist of the present invention. For example, thewavelet transformation can be a Haar Wavelet transformation or otherwavelet transformations. When properly, one or more of transferfunctions H_(diff), H_(vagc), H_(f) may be omitted in calculating H(ω).Therefore, the scope of the present invention is solely intended to bedefined by the accompanying claims.

1. A method for processing a digital signal obtained in a barcodereading operation, comprising a step of applying a wavelettransformation to said digital signal.
 2. The method of claim 1, furthercomprising a step of determining a threshold for coefficients for eachlevel in said wavelet transformation, and setting said coefficients aszero if lower than said threshold.
 3. The method of claim 2, whereinsaid digital signal is obtained by analogue-to-digital conversion of ananalogue signal obtained in said barcode reading operation, and saidthreshold is calculated based on a total transfer function H(ω) of aanalogue processing stage for processing said analogue signal.
 4. Themethod of claim 3, wherein said threshold is calculated by the followingequation: $\begin{matrix}{{Threshold} = {n_{0}\sqrt{2\quad{\ln(N)}} \times \sqrt{\frac{1}{2\pi}{\int_{- \infty}^{\infty}{{{H(\omega)}}^{2}{\mathbb{d}\omega}}}}}} & (1)\end{matrix}$ wherein n₀ is resistance thermal noise generated in apreamplifier in said analogue signal processing stage, and N is numberof data.
 5. The method of claim 4, wherein said total transfer functionH(ω) is a product of H_(diff), H_(vagc), and H_(f).H(ω)=H _(diff) ×H _(vagc) ×H _(f)  (2)wherein H_(diff) is a transferfunction of a differential processing stage; H_(vagc) is a transferfunction of an amplification stage by AGC; H_(f) is a transfer functionof a frequency filtering stage.
 6. The method of claim 1, wherein saidwavelet transformation is a Haar Wavelet transformation.
 7. The methodof claim 1, wherein said wavelet transformation is a discrete wavelettransformation.
 8. The method of claim 1, wherein said wavelettransformation is a continuous wavelet transformation.
 9. A method ofreducing white noise from an analogue signal obtained in a barcodereading operation, comprising the steps of: converting said analoguesignal to a digital signal; applying a wavelet transformation to saiddigital signal; determining a noise threshold for each level in saidwavelet transformation; and setting all coefficients of said wavelettransformation to be zero if lower than said noise threshold.
 10. Themethod of claim 9, wherein said noise threshold is determined based oninformation obtained in an analogue processing stage for processing saidanalogue signal.
 11. The method of claim 10, wherein said noisethreshold is calculated based on a total transfer function H(ω) of saida analogue processing stage: $\begin{matrix}{{{Noise}\quad{Threshold}} = {n_{0}\sqrt{2\quad{\ln(N)}} \times \sqrt{\frac{1}{2\pi}{\int_{- \infty}^{\infty}{{{H(\omega)}}^{2}{\mathbb{d}\omega}}}}}} & (1)\end{matrix}$ wherein n₀ is resistance thermal noise generated in apreamplifier in said analogue signal processing stage, and N is numberof data.
 12. The method of claim 11, wherein said total transferfunction H(ω) is a product of at least one of a transfer function of adifferential processing stage H_(diff), a transfer function of anamplification stage by AGC H_(vagc), and a transfer function of afrequency filtering stage H_(f):H(ω)=H _(diff) ×H _(vagc) ×H _(f)  (2)